/*
 *  Simbad - Robot Simulator
 *  Copyright (C) 2004 Louis Hugues
 *
 *  This program is free software; you can redistribute it and/or modify
 *  it under the terms of the GNU General Public License as published by
 *  the Free Software Foundation; either version 2 of the License, or
 *  (at your option) any later version.
 *
 *  This program is distributed in the hope that it will be useful, 
 *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 *  GNU General Public License for more details.
 *
 *  You should have received a copy of the GNU General Public License
 *  along with this program; if not, write to the Free Software
 *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 *
 -----------------------------------------------------------------------------
 *  
 * $Author: C�dric Hartland $ 
 * $Date: 2007/01/02 $
 * $Revision: 0 $
 * 
 */
package contribs.roomloader;

import javax.vecmath.Vector3d;
import javax.vecmath.Vector3f;

import simbad.sim.Box;
import simbad.sim.EnvironmentDescription;

/**
 * An Arch object to put in the environement.
 */
public class Chair extends FurnitureObject {

	private float _size = 1;

	public Chair(Vector3d pos, EnvironmentDescription wd) {
		create3D(wd);
		translateTo(pos);
	}

	public Chair(Vector3d pos, double size, EnvironmentDescription wd) {
		_size = (float) size;
		create3D(wd);
		translateTo(pos);
	}

	void create3D(EnvironmentDescription wd) {
		super.create3D();
		// Use several boxes to construct the arch.
		Box b1 = new Box(new Vector3d(-1.5 * _size, 0, -1.5 * _size), new Vector3f(0.5f * _size, 3.5f * _size, 0.5f * _size), wd);
		Box b2 = new Box(new Vector3d(-1.5 * _size, 0, 1.5 * _size), new Vector3f(0.5f * _size, 3.5f * _size, 0.5f * _size), wd);
		Box b3 = new Box(new Vector3d(1.5 * _size, 0, -1.5 * _size), new Vector3f(0.5f * _size, 5.5f * _size, 0.5f * _size), wd);
		Box b4 = new Box(new Vector3d(1.5 * _size, 0, 1.5 * _size), new Vector3f(0.5f * _size, 5.5f * _size, 0.5f * _size), wd);

		Box p1 = new Box(new Vector3d(0, 3.5f * _size, 0), new Vector3f(4 * _size, 0.5f * _size, 4 * _size), wd);
		Box d1 = new Box(new Vector3d(1.5 * _size, 5.5f * _size, 0), new Vector3f(1 * _size, 2.5f * _size, 4 * _size), wd);

		b1.setColor(metal);
		b2.setColor(metal);
		b3.setColor(metal);
		b4.setColor(metal);
		p1.setColor(tissu);
		d1.setColor(tissu);

		addComponent(b1);
		addComponent(b2);
		addComponent(b3);
		addComponent(b4);
		addComponent(p1);
		addComponent(d1);
	}
}
